<template>
  <table width="100%" class="cartTable" cellspacing="0" cellpadding="10px">
    <!-- 首行 -->
    <tr class="title">
      <td width="50">
        <input
          type="checkbox"
          name=""
          class="choose_all"
          :checked="checkAll"
          @change="changeChecked"
        />
      </td>
      <td width="100" class="">
        <span style="margin-left: -10px">全选</span>
      </td>
      <td width="400">商品信息</td>
      <td width="150">单价（元）</td>
      <td width="150">数量</td>
      <td width="150">金额（元）</td>
      <td width="80">操作</td>
    </tr>

    <!-- 商品具体信息 -->
    <tr class="row" v-for="item in list" :key="item.id">
      <td>
        <input
          v-model="item.isSelected"
          type="checkbox"
          name=""
          class="choose"
        />
      </td>
      <td class="tal">
        <a href="#" class="pic"><img :src="item.img" alt="" /></a>
      </td>
      <td class="tal">
        <a href="#">{{ item.name }}</a>
      </td>
      <td>
        <del class="tdl">{{ item.oldPrice }}</del>
        <br />
        <b class="unit">{{ item.price }}</b>
      </td>
      <td>
        <div class="amount">
          <a
            href="#"
            class="Increase"
            @click="changeCount(item.id, +item.count + 1)"
            >+</a
          >
          <input
            type="text"
            class="unum"
            :value="item.count"
            @change="inputConut($event, item.id)"
          />
          <a
            href="#"
            class="Reduce"
            @click="changeCount(item.id, +item.count - 1)"
            >-</a
          >
        </div>
      </td>
      <td>
        <b class="u-price">{{ item.price * item.count }}</b>
      </td>
      <td><a href="#" class="btn-del" @click="del(item.id)">删除</a></td>
    </tr>
    <tr class="count">
      <td colspan="7">
        <div class="jiesuan clearfix">
          <div class="left fl">
            <p>
              <input
                type="checkbox"
                name=""
                class="choose_all"
                :checked="checkAll"
                @change="changeChecked"
              />
              全选&nbsp;&nbsp;&nbsp;<a
                href="#"
                class="del_check"
                @click.prevent="clear"
                >删除选中商品</a
              >
            </p>
          </div>
          <div class="right fr clearfix">
            <p>商品总计：￥{{ discountsMoney }}</p>
            <p>活动优惠：-￥{{ discountsMoney - moenyAll }}</p>
            <p>
              已选商品<span class="red t-number">{{num}} </span>件
              总价(不含运费、税费)：<span class="red t-price"
                >￥{{ moenyTotal }}</span
              >
            </p>
            <!-- <div><a href="#" class="btn pay">结算</a></div> -->
            <a href="#" class="btn pay fr">结算</a>
          </div>
        </div>
      </td>
    </tr>
  </table>
</template>

<script>
export default {
  name: 'MyTable',
  props: {
    list: Array,
    checkAll: Boolean,
  },
  methods: {
    del(id) {
      this.$emit('del', id)
    },
    changeChecked() {
      this.$emit('changeChecked', !this.checkAll)
    },
    changeCount(id, value) {
      this.$emit('changeCount', id, value)
    },
    inputConut(e, id) {
      this.$emit('changeCount', id, e.target.value)
    },
    clear() {
      this.$emit('clear')
    },
 
  },

  computed: {
    moenyAll() {
      return this.list.reduce((prev, item) => prev + item.price * item.count, 0)
    },
    discountsMoney() {
      return this.list.reduce(
        (prev, item) => prev + item.oldPrice * item.count,
        0
      )
    },

    moenyTotal() {
      return this.list
        .filter((item) => item.isSelected)
        .reduce((prev, item) => prev + item.price * item.count, 0)
    },
    num(){
       return this.list
        .filter((item) => item.isSelected).reduce((prev, item) => prev + item.count, 0)
    }
  },
}
</script>

<style scoped lang="less"></style>
